﻿Imports System.IO
Public Class MyFileInfo
  Private mFileName As String = ""
  Private NL As String = Environment.NewLine
  Public Property MyFileName() As String
    Get
      Return mFileName
    End Get
    Set(ByVal value As String)
      ' verifico se esiste il percorso indicato
      ' prima di assegnarlo all'attributo
      If My.Computer.FileSystem.
            FileExists(value) Then
        mFileName = value
      End If
    End Set
  End Property
  Public Sub New(ByVal pFileName As String)
    ' verifico se esiste il percorso indicato
    ' prima di assegnarlo all'attributo
    If My.Computer.FileSystem.
          FileExists(pFileName) Then
      mFileName = pFileName
    Else
      Throw New  _
         DirectoryNotFoundException(
         "Il file " & pFileName &
         " non esiste.")
    End If
  End Sub
  Public Function MyGetFileInfo() As String
    Dim risultato As String = ""
    Dim mFile As System.IO.FileInfo
    mFile = My.Computer.FileSystem.
          GetFileInfo(mFileName)
    risultato &= ("Attributi: " &
        mFile.Attributes & NL)
    ' informazioni sui file 
    risultato &= ("Data/ora creazione: " &
        mFile.CreationTime & NL)
    risultato &= _
        ("Data/ora ultimo accesso: " &
        mFile.LastAccessTime & NL)
    risultato &= _
        ("Data/ora ultima scrittura: " &
        mFile.LastWriteTime & NL)
    risultato &= ("Attributi: " &
        mFile.Attributes & NL)
    risultato &= ("Nome directory: " &
        mFile.DirectoryName & NL)
    risultato &= ("Lunghezza: " &
        mFile.Length & NL)
    risultato &= ("Sola lettura: " &
        mFile.IsReadOnly & NL)
    risultato &= ("Estensione: " &
        mFile.Extension & NL)
    Return risultato
  End Function
End Class
